Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.01.2014, 17:22
Интересующийся
Отправить личное сообщение для B1ackgh0st Посмотреть профиль Найти все сообщения от B1ackgh0st
 
Регистрация: 07.01.2014
Сообщений: 14

передать переменную в функцию
всем привет
Есть скрипт выполнения запроса в MySql на добавления поля в таблицу.
Как сделать чтобы результат запроса выводился в DIV с определенным ID

$(function() {
$(".add").click(function() {
$('#load').fadeIn();
$(this).parent();
var name_add_pole = $(this).attr("name_add_pole");
var gost_add = $(this).attr("gost_add");
var cat = $(this).attr("cat");
$.post("ajax/add.php",{name_add_pole : name_add_pole, gost_add : gost_add, cat : cat},AjaxSuccess);
//
//
// как в эту функцию передать переменную cat
//
function AjaxSuccess(data)
{
$('#otvet_' + cat).html(data);
}
return false;
}
);
});
Ответить с цитированием
  #2 (permalink)  
Старый 25.01.2014, 19:45
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от B1ackgh0st
как в эту функцию передать переменную cat
Эта переменная и так в области видимости функции, то есть доступна для функции.
Кстати заметь, что ее значение может измениться к моменту ответа сервера, если скажем кликнуть по другой категории в определенный момент.

На будущее: оформляй код, который выкладываешь, в соответствующие теги.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 26.01.2014, 07:39
Интересующийся
Отправить личное сообщение для B1ackgh0st Посмотреть профиль Найти все сообщения от B1ackgh0st
 
Регистрация: 07.01.2014
Сообщений: 14

Тогда почему ответ выходит только в пераый div
Ответить с цитированием
  #4 (permalink)  
Старый 26.01.2014, 08:37
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от B1ackgh0st
Тогда почему ответ выходит только в пераый div
Если у кликнутого элемента значение атрибута cat равно 3, то ответ выйдет в #otvet_3 (если вдруг не кликнешь еще раз по другому элементу втечение запроса - я уже отмечал это выше)
Сообщение от B1ackgh0st
$(this).parent();
Какова роль этой строчки?
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #5 (permalink)  
Старый 26.01.2014, 11:29
Интересующийся
Отправить личное сообщение для B1ackgh0st Посмотреть профиль Найти все сообщения от B1ackgh0st
 
Регистрация: 07.01.2014
Сообщений: 14

$('#otvet_' + cat).html(data)
если сделать так то ответ не выводится
Если убрать переменную cat и изменить id div'а на otvet то выводится
Ответить с цитированием
  #6 (permalink)  
Старый 26.01.2014, 12:36
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от B1ackgh0st
если сделать так то ответ не выводится
Чему равно значение cat в этот момент? F12 в помощь.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #7 (permalink)  
Старый 26.01.2014, 16:53
Интересующийся
Отправить личное сообщение для B1ackgh0st Посмотреть профиль Найти все сообщения от B1ackgh0st
 
Регистрация: 07.01.2014
Сообщений: 14

Задача у меня такая.
Под каждой категорией выводить форму.
вывожу через PHP
<form method="POST" action="">
</div>
<input type="hidden" name="departments" value="'.$ceh.'">
<input type="hidden" name="year" value="'.$year.'">
<input type="hidden" name="id_sheet" value="'.$id_sheet.'">
<input type="hidden" name="cat" id="cat" value="'.$dropd1['id'].'">
<input name="name_add" id="name_add" class="autocom" type="text">
</td>
<td style="padding:5px;"><input name="gost_add" id="gost_add" class="autocom2" type="text">
<center><div class="add" style="padding:2px;"><i class="color-icons add_co"></i></div></center>
</form>


получается что этих форм на странице в скрытом виде (появляются только при нажатии на категорию) около 30 штук.

Сейчас выяснил что переменная cat берет значение из первой формы, то есть 1. как мне сделать так чтобы она принимала значение VALUE из "своей формы"
Ответить с цитированием
  #8 (permalink)  
Старый 26.01.2014, 17:15
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Че за каша? Что закрывают </div> и </td>? Какого хрена там вобще <td> оторванный от таблицы?
Сообщение от B1ackgh0st
Сейчас выяснил что переменная cat берет значение из первой формы, то есть 1. как мне сделать так чтобы она принимала значение VALUE из "своей формы"
А как она у тебя берется? Показывай код
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #9 (permalink)  
Старый 26.01.2014, 17:18
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,149

cat надо замыкат
Ответить с цитированием
  #10 (permalink)  
Старый 27.01.2014, 00:41
Аватар для Cuntmann
Аспирант
Отправить личное сообщение для Cuntmann Посмотреть профиль Найти все сообщения от Cuntmann
 
Регистрация: 26.01.2014
Сообщений: 78

перевожу для топик-стартера на русский язык смысл его скрипта

$(".add").click(function() {/* при клике на каждом элементе, имеющем класс 'add', сделать следующее: */
$('#load').fadeIn(); /* плавно показать элемент с айди 'load' */
$(this).parent();/* загадочное упоминание парента (возможно, js-аналог выражения "твою мать") кликнутого элемента (судя по представленному коду, это <center>) */
var name_add_pole = $(this).attr("name_add_pole");/* сохранить в переменной значение атрибута 'name_add_pole' кликнутого элемента */
var gost_add = $(this).attr("gost_add");/* сохранить в переменной значение атрибута 'gost_add' кликнутого элемента */
var cat = $(this).attr("cat");/* сохранить в переменной значение атрибута 'cat' кликнутого элемента */

и т.д.


как видно из перевода, изобретены новые атрибуты для элементов <div class="add" style="padding:2px;">...</div>, так что не замыкат надо, а рукиатрубат
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как передать переменную в другую функцию adder-vb jQuery 3 31.01.2013 14:29
Flot Как передать переменную в функцию отрисовки точки на графике Ren jQuery 0 20.06.2012 14:16
Как передать переменную в функцию с помощью JQuery??? Иван Я Events/DOM/Window 3 20.01.2012 11:21
setInterval как передать переменную в функцию kamushek Общие вопросы Javascript 6 02.09.2011 23:53
как передать переменную в функцию Virgile Общие вопросы Javascript 2 08.08.2010 22:50